Parallel efficient algorithms and their programming. Fundation of ATHAPASCAN-1

نویسنده

  • Jean-Louis Roch
چکیده

2 Ce rapport contient les deux premiers chapitres du tutoriel " Parallel Computer Algebra " donné au colloque annuel de calcul formel ISSAC (Juillet 97, Hawaii) par Jean-Louis Roch et Gilles Vil-lard. Il décrit les bases pour la construction, l'analyse et la programmation d'algorithmesparalì eles sur des architectures distribuées. Utilisant les techniquesà la base de l'algorithmiqueparalì ele syn-chrone PRAM, il montre comment elles peuventêtre appliquéesà la construction d'algorithmes paralì eles qui conduisentà des programmes performants sur des architectures distribuées asyn-chrones. Deux points sont alors critiques: la prise en compte des surcoûts de communication et d'ordonnancement. Le premier chapitre présente les techniques permettant la construction d'algorithmes efficaces. Différents critères doiventêtre minimisés: le nombre d'opérations qui doit rester proche du nom-bre optimal d'opérations sur une machine séquentielle, le tempsparalì ele minimal (i.e. sur un nombre infini de processeurs) pour permettre que le temps d'exécution diminue lorsque le nom-bre de processeurs augmente (on parle d'extensibilité), le volume de communications pour limiter leur surcoût sur une architecture distribuée. Pris séparément, ces différents critéres conduisentà des algorithmes fondamentalement différents. Un algorithme efficace doit alors réaliser un bon compromis entre ces critères, pris deuxà deux ou dans leur ensemble; il est souvent basé sur un couplage entre ces différents algorithmes: on parle de poly-algorithmes ou d'algorithmes en cascade. Différents exemples illustrent les techniques de base pour construire des algorithmes efficaces réalisant des compromis intéressants. Les algorithmes sont représentés par des graphes de flots de données. Leur programmation est explicitéè a partir d'un langage abstrait, ATH (Asynchronous Tasks Handling). Ledeuxì eme chapitré etudie l'ordonnancement de tels algorithmes sur une architecture dis-tribuée asynchrone (modèle LogP). Le cas le plus général o` u le graphe est inconnu (les tâches qui le constituent sont construites en cours d'exécution et sont de durées inconnues) est spécifique-mentétudié. Un algorithme d'ordonnancement en-ligne qui assure des exécutions optimales pour un algorithmeparalì ele efficace tel ceuxétudiés dans le chapitre 1 est explicité. En conclusion, le langage ATHAPASCAN qui permet l'implémentation d'un tel ordonnancement est présenté. Ce langage (implémenté par une bibliothèque C++) est une réalisation concrète du langage ATH.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

HOMA: automatic re-scheduling of multiple invocations in CORBA

This report presents Homa, an efficient and scalable CORBA-based code coupling environment. Homa is composed by an IDL compiler and a runtime support. From IDL definitions of CORBA objects, Homa compiler automatically extracts all the informations which allow efficient and scalable composition of method invocations. The compiler and runtime support rely on two functionalities: the automatic ext...

متن کامل

Athapascan-1: Parallel Programming with Asynchronous Tasks

Athapascan-1 is a C++ library for multi-threaded parallel programming. It implements a macro data-ow language: both computation and data grains are explicit. Semantics of shared memory access is based on a lexicographic order. The performance of a code (parallel time, communication and arithmetic works, space) can be evaluated from a cost model without need of a machine model. Its important fea...

متن کامل

Performance Evaluation of INUKTITUT: An Efficient Interface for Asynchronous Parallel Programming Environment Athapascan

This article presents the performance evaluation of INUKTITUT, an interface that allows effectively and easily carrying of parallel programming highlevel environments such as Athapascan on the computing clusters. INUKTITUT contains functions for multithreading and for communications: the intra-node parallelism of processes is managed by threads communicating via shared memory; the inter-node pa...

متن کامل

Cloud Computing Technology Algorithms Capabilities in Managing and Processing Big Data in Business Organizations: MapReduce, Hadoop, Parallel Programming

The objective of this study is to verify the importance of the capabilities of cloud computing services in managing and analyzing big data in business organizations because the rapid development in the use of information technology in general and network technology in particular, has led to the trend of many organizations to make their applications available for use via electronic platforms hos...

متن کامل

Efficient and Easy Parallel Implementation of Large Numerical Simulations

This paper presents an efficient implementation of two large numerical simulations using a parallel programming environment called Athapascan. This library eases parallel implementations by managing communications and synchronisations. It provides facilities to adapt the schedule to efficiently map the application on the target architecture.

متن کامل

Large Scale Simulation of Parallel Molecular Dynamics

This paper aims to describe the implementation of TAKAKAW, an efficient parallel application for the simulation of molecular dynamics designed to handle large proteins in biology. The implementation is based on the multi-threading parallel programming environment, called ATHAPASCAN 1 which allows to implement and evaluate easily several load-balancing strategies. Some experiments run on one of ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997